<?php

  /**
   * 文章类别模型
   */
Class articleTypeModel extends Model{

    /**
     * 获得单条数据
     * @param $condition 条件
     * @return mixed
     */
    public function getArticleByOne($condition,$field){
        return $this->where($condition)->field($field)->find();
    }

    /**
     * 获得多条数据
     * @param $condition 条件
     * @param $field 字段
     * @param $order 排序
     * @param $limit 数量
     * @return mixed
     */
    public function getArticleByMore($condition,$field,$order,$limit){
        return $this->where($condition)->field($field)->order($order)->limit($limit)->select();
    }

    /**
     * 根据条件更新数据
     * @param $condition 条件
     * @param $data 数据
     * @return mixed
     */
    public function update($condition,$data){
        return $this->where($condition)->save($data);
    }

    /**
     * @param $data 数据
     * @return mixed
     */
    public function addarticle($data){
         return $this->add($data);
    }

    /**
     * @param $id 分类id
     * @return mixed 返回int
     */
    public function delectByid($id){
          // 判断该分类下是否还有子分类
          $issub = $this->getArticleByMore(array("pid"=>$id));
          if($issub){
                // 循环删除该分类  // 继续判断该分类下是否有文章
                foreach($issub as $v){
                     $where['cid'] = $v['id'];
                     if($aidarr = D('article')->getArticleByMore($where)){
                            // 执行删除操作 先删除文章
                            foreach($aidarr as $value){
                                   D("article")->delete($value['id']);
                            }
                     }
                     $this->delete($v['id']);
                }
          }
          return $this->delete($id);
    }

    /**
     * 返回多维数组的数据
     * @return array
     */
    public function getCategory(){
           $data = self::getArticleByMore(); // 获取所有分类
           import("Class.Category",APP_PATH); // 引入无限极分类库
           $category = new Category(); // 实例化类
           $formatdata = $category::unLimitdForLevel($data); //调方法
           return $formatdata;
    }
}
?>